#ifndef HDF_TREE_H_
#define HDF_TREE_H_
/**
 * @brief Defines a tree node in the configuration tree.
 *
 * The tree node information includes the node name, unique node ID, node attributes, parent node, child nodes,
 * and sibling nodes.
 */
#define NAMESIZE 20
typedef struct DeviceResourceNode {
    const char name[NAMESIZE];                      /**< Pointer to the node name */    
    void  *data;                           // change this to something meaningful
    struct DeviceResourceNode *parent;     /**< Pointer to the parent node */
    struct DeviceResourceNode *child;      /**< Pointer to a child node */
    struct DeviceResourceNode *sibling;    /**< Pointer to a sibling node */
} DeviceResourceNode ;

typedef int bool;

bool ShowNode(DeviceResourceNode *node, void *args);
void ShowTree2();
void AddNode(char *parent, char*child);
void DeleteTree();

#define false 0
#define true  1
#endif
